1. 实例分割介绍

实例分割是一种计算机视觉技术,用于在图像中同时识别物体的位置并标记出物体的轮廓。在实例分割中,每个被识别的物体都会生成一个掩膜(Mask)。掩膜可以理解为一张与原图大小相同的“标记图层”,掩膜不仅能帮助模型进行视觉理解,还能用于后续的操作,如抠图、测量物体面积等。
在HUSKYLENS 2的实例分割的功能下,能识别出80种不同的物体并标记出他们的轮廓,识别类别同物体识别功能相同。

Interface Diagram

2. 实例分割使用说明

这部分我们将了解如何使用HUSKYLENS 2对画面中出现的物体完成实例分割(该物体须在80个类别中)。

2.1 选择实例分割功能

给HUSKYLENS 2供电,启动成功后,找到“ 实例分割”功能。

Interface Diagram

2.2 观察实例分割结果

对物体进行实例分割:将HUSKYLENS 2对准某个物体(该物体须在80个类别中),使物体完整的出现在画面中的十字光标附近。观察屏幕,十字光标消失,画面中出现白色掩膜沿着物体轮廓将物体遮罩出并出现该物体的类别标签和置信度。

Interface Diagram

学习物体,观察结果:出现类别标签后,按下A键学习物体。学习完成后,白色掩膜变色,出现已学习的ID。

Interface Diagram

3. 实例分割参数设置

HUSKYLENS 2出厂的默认参数已满足基础功能使用需求,如需更细化的功能,可手动调节各个参数。以下参数均基于“实例分割”功能,因此,首先确保已进入“实例分割”功能,如图所示。要修改的参数,可通过向左或向右滑动屏幕下方的参数文字进行选择。

Interface Diagram

3.1 遗忘ID

如需遗忘前面学习过的所有物体的类别:第一步,点击屏幕上的“遗忘ID”;第二步,出现弹窗“遗忘全部ID和名字”后,点击“确认”。

Interface Diagram

此时,可将HUSKYLENS 2对准已学习但遗忘的物体,屏幕左侧只出现类别标签,未出现对应ID和置信度,说明“遗忘”完成。

Interface Diagram

3.2 检测阈值

在实例分割功能中阈值时设定的一个有关置信度的界限值,只有当模型的预测置信度高于这个阈值时,才会输出该类别的实例分割结果。
设置步骤:点击“检测阈值”,其上方出现参数调节滑杆,左滑变小,右滑变大,效果如图。

Interface Diagram

3.3 掩膜阈值

掩膜阈值控制着识别出的物体的掩膜边界,可以通过掩膜阈值来调整识别出的物体的掩膜的大小范围。当掩膜阈值较小时,分割出的物体的掩膜边界较大,识别出的物体轮廓不精确。当将掩膜阈值调大时,相应出现的物体轮廓边界比较精确。
设置步骤:点击“掩膜阈值”,其上方出现参数调节滑杆,左滑变小,右滑变大,效果如图。

Interface Diagram

3.4 NMS阈值

NMS阈值(Non-Maximum Suppression)非极大值抑制,是视觉识别中的一个常见参数,用来筛选识别框。在视觉识别任务中,模型往往会在同一个识别目标周围预测出多个相互之间可能有重叠的识别框。如果不进行筛选就可能出现:一个目标物体被多个框同时框出,这些框相互之间有交叉重叠的现象,这时就可以通过调整NMS 阈值来去掉交叉重复的框,只保留最优的一个。
通俗来说,NMS 阈值决定了 两个框重叠多少才算“重复”。举例来讲:如果阈值低(比如 0.3):两个框只要有点重叠,就会认为是重复的,去掉其中一个。如果阈值高(比如 0.7):两个框重叠很多才会被认为是重复的,保留下来的框可能更多。
设置步骤:点击“NMS阈值”,其上方出现参数调节滑杆,左滑变小,框住的人少,右滑变大,框住的人多。

Interface Diagram

3.5 设置名字

本参数可以给学习过的条形码设置名字,中英文均可。
设置步骤:点击“设置名字”,上下滑动左上角的数字,选择为哪个ID设置名字;点击屏幕上的键盘可设置名字,如左图;设置完毕需点击右下角√键保存,保存成功则右上角会显示绿色对勾标志。下图是设置名字后的效果。

Interface Diagram

3.6 恢复默认

本参数可将所有设置项恢复为默认状态,并遗忘已学习的标签和ID,但不清空导出的模型(关于导出模型请看下文)。
设置步骤:点击“恢复默认”,出现“恢复默认配置”弹窗后,点击“确认”。

Interface Diagram

3.7 导出模型

本参数可将当前设置的参数、学习的类别标签、ID,保存、导出到HUSKYLENS 2本地内存。适用于迁移参数至另一个HUSKYLENS 2等场景。此操作无需插TF卡。
导出步骤:点击“导出模型”,出现图“保存配置到”弹窗时,上下滑动数字,选择保存为几号模型(共可保存5个模型),随后点击弹窗左下角的“确认”按钮以保存。确认后,自动导出,如图。

Interface Diagram

查看导出的模型:弹窗“导出中”消失后,可以通过电脑查看导出的模型文件。
首先,将HUSKYLENS 2连接至电脑USB接口。

Interface Diagram

其次,通过电脑,根据下图路径访问HUSKYLENS 2的内存,可查看到扩展名为.bin的模型文件,扩展名前面的数字就是保存配置时选择的“模型号”。该文件可复制、粘贴到别处。

Interface Diagram

3.8 导入模型

本参数可以将HUSKYLENS 2(以下称“二哈A”)导出的模型导入到另一个HUSKYLENS 2(以下称“二哈B”)上,以便二哈B不用重新学习也可以识别出二哈A学习过的条形码是ID几。
导入步骤:
第一步,将二哈A连接电脑,把导出的文件复制到电脑桌面。
第二步,将二哈B连接电脑,把上一步的文件粘贴到二哈B的指定文件夹,路径如图所示。(如找不到object-segmentation文件夹,请先执行第三步,导入过模型,会自动创建本文件夹,随后再回到第二步。)

Interface Diagram

第三步,首先确认已经进入到“物体分类”功能,然后点击“导入模型”,出现“加载配置”弹窗后,上下滑动数字,选择加载几号模型,此处应与上一步保存的模型号一致。例如,粘贴进二哈B的模型文件为repo1.bin,故选择数字0。最后,点击“确认”以导入。

Interface Diagram

随后可做实例分割测试。以下左图为二哈B导入模型前的实例分割情况,右图为二哈B导入模型后实例分割情况。

Interface Diagram

4. 相关编程示例